﻿using GigaSite.Domain.Entities;

namespace GigaSite.Domain.Interfaces.Repositories
{
    /// <summary>
    /// Абстрактный репозиторий настроек
    /// </summary>
    public interface ISettingsRepository: IBaseRepository<Setting>
    {
        /// <summary>
        /// Получает значение настройки по ключу
        /// </summary>
        /// <param name="name">Системное имя настройки</param>
        /// <returns>Значение настройки в виде строки</returns>
        string GetValue(string name);

        /// <summary>
        /// Устанавливает значение настройки по ключу
        /// </summary>
        /// <param name="name">Системное имя настройки</param>
        /// <param name="value">Значение настройки</param>
        void SetValue(string name, string value);
    }
}